//
//  main.cpp
//  从函数返回数组
//
//  Created by linjinzhu on 2017/7/10.
//  Copyright © 2017年 baidu. All rights reserved.
//

#include <iostream>
#include <ctime>

using namespace std;

///note:C++ 不支持在函数外返回局部变量的地址，除非定义局部变量为 static 变量
int * getRandom() {

    //定义数组
    static int ret[10] = {};

    // 设置种子
    srand((unsigned)time(NULL));

    // 生成随机数
    for (int i=0; i< 10; i++) {
        ret[i] = rand();

        cout << ret[i] << endl;
    }

    //返回数组
    return ret;
}

int main(int argc, const char * argv[]) {

    int *p;
    p = getRandom();


    for (int i=0; i<10; i++) {
        cout << "*(p+" << i << ") =";
        cout << *(p + i) << endl;
        cout << p[i] << endl;
        cout << *(&p[0] + i) << endl;
    }

    return 0;
}
